![]() |
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
To access the contents, click the chapter and section titles.
Oracle Performance Tuning and Optimization
Application ServersApplication servers are in use in many installations throughout the world today. The term application server really describes any kind of system used to run an application that services clients and uses an RDBMS server. These types of systems can be used to take input from clients, process that input, and use the resulting data as input to the RDBMS server; alternatively, they can take input from the RDBMS server, process that data, and send it to the client. The primary task of the application server is to offload server application tasks from the RDBMS server. Many of these tasks must be run on one system because of issues of data consistency and locking. Not all application tasks can be moved to the client; many tasks have to coordinate actions for many clients to provide for data integrity. The example in the following sidebar may help make things a little clearer.
How To Tune the Application ServerTuning the application server depends on the function of the server. Typically, this type of machine is memory dependent. You must make sure that you have sufficient memory to avoid paging and swapping. The particular areas to monitor and tune on the application server include the following:
By taking advantage of application servers, you may be able to distribute the application load among several machines, increasing overall throughput. These architectures are new but are becoming increasingly more popular with larger applications. I believe that these kinds of distributed systems will continue to grow in the near future. Transaction Monitor (TM)Transaction Monitors (TMs) have been around for quite some time. Probably the most popular of the TMs is Tuxedo, which has been used for a number of years in many different configurations and applications. With the increasing popularity of client/server applications, TMs will become a necessary part of these applications. To understand how TMs are used and how to tune them, you must first understand what a TM is. What Is a TM?A Transaction Monitor is a software product designed to facilitate communication and data processing between a client and server system. This system takes data input from the application, processes that data using a queuing mechanism, and submits that data to the RDBMS server. Here are some of the features of a TM you can use to improve client/server processing:
To use a TM, you must write your applications to take advantage of the TM. Applications must be written in two parts: a client side and a server side. The client-side code must perform these functions:
The server-side code must perform the following functions:
For example, you may have an application that performs account updates, status functions, and creation functions. The client-side process puts the transaction on one of three queues based on the function of that transaction. There can be any number of update, status, and creation processes to handle jobs on the queues. These processes are responsible for their particular function and process the data based on that function. In this manner, creation can be given a lower or higher priority than the other functions, and the number of account-creation tasks can be controlled. By using a TM, you have an incredible amount of control over how your transactions are processed and scheduled. An easy-to-use interface makes programming the TM very straightforward.
|
![]() |
Products | Contact Us | About Us | Privacy | Ad Info | Home
Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited. |